#include <bits/stdc++.h>
using namespace std;
int t;
typedef long long ll;
ll exgcd(ll a,ll b,ll &x,ll &y){
    if(a%b==0){
        x=0;
        y=1;
        return b;
    }
    ll tx,ty;
    ll d=exgcd(b,a%b,tx,ty);
    x=ty;
    y=tx-a/b*ty;
    return d;
}
ll comp(ll a,ll b,ll m){
    if(a<b){
        return 0;
    }else if(a==b){
        return 1;
    }else if(b>a-b){
        b=a-b;
    }
    ll ca=1,cb=1;
    for(int i=0;i<b;i++){
        ca=ca*(a-i)%m;
        cb=cb*(b-i)%m;
    }
    ll x,y;
    exgcd(cb,m,x,y);
    x=(x%m+m)%m;
    return ca*x%m;
}
ll lucas(ll a,ll b,ll m){
    ll ans=1;
    while(a&&b){
        ans=(ans*comp(a%m,b%m,m))%m;
        a/=m;
        b/=m;
    }
    return ans;
}
int main(void){
    ll n,m,p;
    scanf("%d",&t);
    while(t--){
        scanf("%lld%lld%lld",&n,&m,&p);
        printf("%lld\n",lucas(n+m,m,p));
    }
    return 0;
}